/*
 *Description:
 *User:laoHu
 *Created with Intellij IDEA 2025
 *Data:2025.05.22
 *Time:18:42
 */

//循环与分支


import java.util.Random;
import java.util.Scanner;

public class Test {

    //猜数字小游戏
    public static void main13(String[] args) {
        Random random = new Random();
        //Random 是一种类
        //new Random()是开辟新的空间
        //将新开辟的空间给random使用

        int n = random.nextInt(100);
        //random.nextInt表示生成的是整型值
        //（）括号内表示生成的范围：0 - 100

        Scanner scanner = new Scanner(System.in);

        while(true){

            System.out.print("请输入猜测的数字：");
            //guest接收输入的值
            int guest = scanner.nextInt();
            //猜测判断
            if(guest > n){
                System.out.println("猜大了");
            } else if (guest < n) {
                System.out.println("猜小了");
            } else {
                System.out.println("猜对了");
                System.out.println("随机数是：" + n);
                break;
            }
        }
        scanner.close();//回收scanner指向的空间
    }

    //Scanner：多次输出
    public static void main12(String[] args) {
        //创建变脸scanner
        Scanner scanner = new Scanner(System.in);
        while (true) {
            //创建变量n接收键盘输入的值
            int n = scanner.nextInt();
            //输出n
            System.out.println(n);
        }
        //scanner.hasNext()表示有多次输出
//        while (scanner.hasNext()) {
//            //创建变量n接收键盘输入的值
//            int n = scanner.nextInt();
//            //输出n
//            System.out.println(n);
//        }
    }

    //Scanner的使用
    public static void main11(String[] args) {

        Scanner scanner = new Scanner(System.in);
        //Scanner是一种类 scanner是变量名
        // new相当于新开辟一块空间
        //system.in表示是系统输入

        //创建变量
       int n = scanner.nextInt();
        //scanner.nextInt（)表示输入的是一个整型值
        //创建整型变量n接收返回值

        //输出n
        System.out.println(n);

    }

    //输出语句：print
    public static void main10(String[] args) {
        int i = 10;
        System.out.print(i);//将数据打印,变量名作为参数
        System.out.println();//换行
        System.out.println(i);//将数据打印后换行，变量名作为参数
        System.out.printf("%d",i);//按照指定格式打印,与C语言使用方式一样
    }

    //do while:以下程序的输出结果是什么
    public static void main9(String[] args) {
        int i = 0;
        int j = 0;
        while (j < 2) {
            do {
                i++;
                if (i == 6)
                    break;//跳出循环
                System.out.print(i + " ");
            } while (i < 10);
            j++;
        }
    }

    //以下程序输出的结果是什么？
    public static void main8(String[] args) {

        for (int i = 0; i < 10; i++) {
            if(i == 5)
                continue;
            System.out.print(i + " ");
        }
    }

    //for循环：输出 1 -10
    public static void main7(String[] args) {
        for (int i = 1; i <= 10 ; i++) {
            System.out.print(i + " ");
        }
    }

    //while：break 和 continue
    public static void main6(String[] args) {
        int i = 1;
        while(i < 10){
            while(i !=5){
                i++;
            }
            if(i == 6)
                break;
            System.out.println(i + " ");
            i++;
        }
    }


    //while:求两个数的最大公约数
    public static void main5(String[] args) {
        int a = 16;
        int b = 24;
        //使用辗转相除法不断的求余数，赋值
        int c = a % b;//16 % 24 = 16
        while(c != 0){//c = 16满足 第二次 c = 8满足 c = 0不满足
            a = b;//a = b = 24   a = 16
            b = c;//b = 16;   b =8
            c = a % b;//c = 24 % 16 = 8  c = 16 % 8 =0
        }
        System.out.println("a 和 b 的最大公约数是：" + b);
    }

    //while循环：输出 1 - 10
    public static void main4(String[] args) {
        int i = 1;
        while(i <= 10){
            System.out.print(i + " ");
            //i + " " 输出的是字符串
            //等价于将i 加到空格字符前
            //输出 1和空格
            i++;
        }
    }

    //switch case分支的使用
    public static void main3(String[] args) {
        int day = 7;
        //先对表达式进行判断
        switch(day){
            //day此时为7对应 case 7的分支
            case 1:
                System.out.println("星期一");
                break;//break的作用是跳出循环，此
            case 2:   //出是为了不执行多个分支
                System.out.println("星期二");
                break;
            case 3:
                System.out.println("星期三");
                break;
            case 4:
                System.out.println("星期四");
                break;
            case 5:
                System.out.println("星期五");
                break;
            case 6:
                System.out.println("星期六");
                break;
            case 7://满足输出
                System.out.println("星期天");
                break;
            default:
                System.out.println("输出错误");

        }
    }


    //判断一个数是大于0，或小于0，或等于0
    public static void main2(String[] args) {
        int num = 0;
        if (num > 0) {
            System.out.println(">");
        } else if (num < 0) {
            System.out.println("<");
        } else {
            System.out.println("==");
        }
    }

    public static void main1(String[] args) {
        int a = 2;
        //判断是否为奇数或者偶数
        if(a % 2 == 1)
            System.out.println("奇数");
        else
            System.out.println("偶数");

        }
}

